load("@prysm//tools/go:def.bzl", "go_library")
load("@io_bazel_rules_go//go:def.bzl", "go_test")

go_library(
    name = "go_default_library",
    srcs = [
        "archived_point.go",
        "backup.go",
        "blocks.go",
        "checkpoint.go",
        "deposit_contract.go",
        "encoding.go",
        "finalized_block_roots.go",
        "kv.go",
        "migration.go",
        "migration_archived_index.go",
        "migration_block_slot_index.go",
        "operations.go",
        "powchain.go",
        "schema.go",
        "slashings.go",
        "state.go",
        "state_summary.go",
        "utils.go",
    ],
    importpath = "github.com/prysmaticlabs/prysm/beacon-chain/db/kv",
    visibility = ["//beacon-chain:__subpackages__"],
    deps = [
        "//beacon-chain/cache:go_default_library",
        "//beacon-chain/core/helpers:go_default_library",
        "//beacon-chain/db/filters:go_default_library",
        "//beacon-chain/db/iface:go_default_library",
        "//beacon-chain/state:go_default_library",
        "//proto/beacon/db:go_default_library",
        "//proto/beacon/p2p/v1:go_default_library",
        "//shared/bytesutil:go_default_library",
        "//shared/fileutil:go_default_library",
        "//shared/params:go_default_library",
        "//shared/sliceutil:go_default_library",
        "//shared/traceutil:go_default_library",
        "@com_github_dgraph_io_ristretto//:go_default_library",
        "@com_github_ethereum_go_ethereum//common:go_default_library",
        "@com_github_ferranbt_fastssz//:go_default_library",
        "@com_github_gogo_protobuf//proto:go_default_library",
        "@com_github_golang_snappy//:go_default_library",
        "@com_github_pkg_errors//:go_default_library",
        "@com_github_prometheus_client_golang//prometheus:go_default_library",
        "@com_github_prysmaticlabs_ethereumapis//eth/v1alpha1:go_default_library",
        "@com_github_prysmaticlabs_prombbolt//:go_default_library",
        "@com_github_sirupsen_logrus//:go_default_library",
        "@io_etcd_go_bbolt//:go_default_library",
        "@io_opencensus_go//trace:go_default_library",
    ],
)

go_test(
    name = "go_default_test",
    srcs = [
        "archived_point_test.go",
        "backup_test.go",
        "blocks_test.go",
        "checkpoint_test.go",
        "deposit_contract_test.go",
        "encoding_test.go",
        "finalized_block_roots_test.go",
        "kv_test.go",
        "migration_archived_index_test.go",
        "migration_block_slot_index_test.go",
        "operations_test.go",
        "powchain_test.go",
        "slashings_test.go",
        "state_summary_test.go",
        "state_test.go",
        "utils_test.go",
    ],
    embed = [":go_default_library"],
    deps = [
        "//beacon-chain/cache:go_default_library",
        "//beacon-chain/db/filters:go_default_library",
        "//beacon-chain/state:go_default_library",
        "//proto/beacon/db:go_default_library",
        "//proto/beacon/p2p/v1:go_default_library",
        "//proto/testing:go_default_library",
        "//shared/bytesutil:go_default_library",
        "//shared/params:go_default_library",
        "//shared/testutil:go_default_library",
        "//shared/testutil/assert:go_default_library",
        "//shared/testutil/require:go_default_library",
        "@com_github_ethereum_go_ethereum//common:go_default_library",
        "@com_github_gogo_protobuf//proto:go_default_library",
        "@com_github_prysmaticlabs_ethereumapis//eth/v1alpha1:go_default_library",
        "@in_gopkg_d4l3k_messagediff_v1//:go_default_library",
        "@io_etcd_go_bbolt//:go_default_library",
    ],
)
